草庐IT

macos - 拖放到 NSArrayController

全部标签

macos - 检查 keyDown event.modifierFlags 产生错误

我继承了NSTextView并重写了keyDown。我想检测命令键组合。例如,Command-L。Apple'sdocumentation表示您只是使用NSEventModifierFlags.CommandKeyMask和修饰符标志(在传递的NSEvent中)。当我这样做时:letck=NSEventModifierFlags.CommandKeyMask我收到一个奇怪的错误:Binaryoperator'&'cannotbeappliedtotwo'NSEventModifierFlags'operands.这是怎么回事?这是swift2.0,xcode7。谢谢!

macos - 在 El Capitan 中,NSPopover 有时位置错误

我正在构建一个状态栏小应用程序,当我单击该图标时它会显示一个NSPopover。一切正常,直到我升级到ElCapitan。问题是当我第一次启动应用程序时,我模拟状态栏图标自动按下,因为我想看到弹出窗口,它出现在屏幕的左下角。在我关闭它并再次打开它后,它从屏幕顶部显示正常。你看有什么不对吗?这是代码,当我在showPopover中打印值时,没有任何问题privateletmenu=MenuBarController()overrideinit(){super.init()self.menu.onMouseDown={if(self.menu.iconView?.isSelected==t

macos - 快速抓取 "My Card"CNContact

我似乎无法弄清楚如何从联系人中获取用户“我的名片”。我正在使用swift开发原生Mac应用程序。 最佳答案 它不是来自(MacOS10.11的全新)CNContact,而是MacOS的ABAddressBookframeworkhasamethodcalledme()这将返回登录用户的ABPerson记录。并获得等效的vCard,callvCardRepresentation()onthatABPersonobject.上述解决方案的好处在于它可以在较旧的MacOS版本(例如MacOS10.9、10.10)上运行。Marek指出了C

macos - Swift 中的 Cocoa 授权

这是我第一次使用Swift、Cocoa(有CocoaTouch经验)和使用授权,所以老实说我什至不知道我是否走在正确的轨道上。我正在尝试修改主机文件,这需要用户身份验证,但AuthorizationCreate和AuthorizationExecuteWithPrivileges方法都出错。varauthorizationRef:AuthorizationRefvarstatus:OSStatusstatus=AuthorizationCreate(nil,environment:kAuthorizationEmptyEnvironment,flags:kAuthorizationFl

macos - 滚动时 NSTableView 非常滞后

在我的OSX应用程序中,它使用CoreData我的表格View在滚动时非常滞后,我在那里只有大约100多行......我正在使用Cocoa绑定(bind)NSArrayController在TableView中显示我的数据。我只有一个具有13个属性的实体,但该TableView/ScrollView仍然非常滞后。是否存在导致该行为的一些常见错误/错误编码?滚动时我的CPU使用率约为85%。有人知道这是为什么吗?我正在使用Xcode7发布版本。更新:仪器看起来像这样(我第一次使用它):更新2:我使用NSVisualEffectView并重写allowsVibrancy以返回true,因此

macos - OS X Storyboard : how to show a window programmatically?

我正在创建一个OSX状态栏应用程序。我正在努力实现以下目标:应用开始时不可见,带有菜单栏项点击菜单栏项显示主窗口停用时,窗口隐藏所以我试图在单击菜单项时以编程方式显示主窗口,但没有成功。我的主窗口选中了“停用时隐藏”。隐藏后,我无法使用代码使其再次可见。这是我现在的代码,但它不起作用:@IBActionfuncmenuClick(sender:AnyObject){varmainWindow=NSStoryboard(name:"Main",bundle:nil)?.instantiateInitialController()mainWindow?.makeKeyAndOrderFro

macos - 将存档类型从 *Generic Xcode Archive* 更改为 *Mac App Archive*

我有一个用Swift编写的小型命令行应用程序,现在我想将其归档。然而,像我之前的许多其他人一样,我遇到了如何将ArchiveType从GenericXcodeArchive更改为MacAppArchive。解决此问题的大多数先前答案建议将目标的跳过安装标志设置为否。我已经这样做了,但没有任何区别。我还尝试为该项目将相同的标志设置为No,但结果仍然相同。其中一些答案还提出了一些其他建议,我也在适当的地方遵循了这些建议,但ArchiveType仍然拒绝让步。整个项目由一个10行的文件组成,现在我已经想不出还有什么可以摆弄的了。 最佳答案

ios - UITableView 拖放到表外 = 崩溃

好的我的拖放功能几乎可以完美运行。我长按一个单元格,它可以让我顺利地将按下的单元格移动到其他两个单元格之间的新位置。表格会调整,更改会保存到核心数据。太棒了!坏事我的问题是,如果我将单元格拖到表格底部单元格下方,即使我不松开(松开)单元格...应用程序也会崩溃。如果我缓慢地拖动,当单元格穿过最后一个单元格的y中心时,它真的会崩溃……所以我认为这是一个与快照获取位置相关的问题。不太重要但可能相关的是,如果我长按最后一个包含值的单元格下方,它也会崩溃。拖放操作运行一个switch语句,该语句根据状态运行三组代码之一:媒体开始时的一个例子单元格被拖动的一种情况用户松开手机的一种情况我的代码改

macos - CIColorClamp 在 OS X El Capitan 中无法正常工作

我正在使用Swift进行一些视频处理。升级到ElCapitan(和Swift2)后,我的代码崩溃了。我将错误追溯到CIFilter函数CIColorClamp。这个函数应该限制像素值,但实际上会弄乱图像范围。let_c:CGFloat=0.05letminComp=CIVector(x:_c,y:_c,z:_c,w:1)letmaxComp=CIVector(x:1,y:1,z:1,w:1)letclamp:CIFilter=CIFilter(name:"CIColorClamp")!print("clamp-in\(image.extent)")clamp.setDefaults()

ios - 有什么方法可以只允许将 MKMapView 缩放到特定区域,同时禁用任何其他用户交互?

我有一个带有MapView的swift应用程序。这些是我在mapStoryboard上的设置:另外,在我正在做的代码中:letregionRadius:CLLocationDistance=10000letinitialLocation=CLLocation(latitude:latitude,longitude:longitude)centerMapOnLocation(initialLocation,map:cell.mapView,radius:regionRadius)cell.mapView.scrollEnabled=falsecell.mapView.rotateEnab